home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1997 December / PC Pro December 1997 CD-Rom coverdisc.iso / symantec / dbAnywh / JAVA.BIN / CLASSES.ZIP / sun / tools / tree / BitXorExpression.class (.txt) < prev    next >
Encoding:
Java Class File  |  1996-12-14  |  2.0 KB  |  47 lines

  1. package sun.tools.tree;
  2.  
  3. import sun.tools.asm.Assembler;
  4. import sun.tools.java.Environment;
  5.  
  6. public class BitXorExpression extends BinaryBitExpression {
  7.    public BitXorExpression(int var1, Expression var2, Expression var3) {
  8.       super(17, var1, var2, var3);
  9.    }
  10.  
  11.    Expression eval(boolean var1, boolean var2) {
  12.       return new BooleanExpression(super.where, var1 ^ var2);
  13.    }
  14.  
  15.    Expression eval(int var1, int var2) {
  16.       return new IntExpression(super.where, var1 ^ var2);
  17.    }
  18.  
  19.    Expression eval(long var1, long var3) {
  20.       return new LongExpression(super.where, var1 ^ var3);
  21.    }
  22.  
  23.    void setBitCondition(long var1, long var3, ConditionVars var5) {
  24.       long var6 = var5.vsTrue;
  25.       long var8 = var5.vsFalse;
  26.       long var10 = var6 & var8;
  27.       var5.vsTrue = var10 | var1 & var6 | var3 & var8;
  28.       var5.vsFalse = var10 | var1 & var8 | var3 & var6;
  29.    }
  30.  
  31.    Expression simplify() {
  32.       if (super.left.equals(true)) {
  33.          return new NotExpression(super.where, super.right);
  34.       } else if (super.right.equals(true)) {
  35.          return new NotExpression(super.where, super.left);
  36.       } else if (!super.left.equals(false) && !super.left.equals(0)) {
  37.          return (Expression)(!super.right.equals(false) && !super.right.equals(0) ? this : super.left);
  38.       } else {
  39.          return super.right;
  40.       }
  41.    }
  42.  
  43.    void codeOperation(Environment var1, Context var2, Assembler var3) {
  44.       var3.add(super.where, 130 + super.type.getTypeCodeOffset());
  45.    }
  46. }
  47.